package com.ruoyi.gis.service;

import java.util.List;

import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.gis.domain.DatasetRasterTask;
import com.ruoyi.gis.vo.AddRasterTaskCodeVo;
import com.ruoyi.gis.vo.AddRasterTaskFlowVo;
import com.ruoyi.gis.vo.AddRasterTaskVo;

/**
 * 遥感监测任务Service接口
 *
 * @author rww
 * @date 2024-09-20
 */
public interface IDatasetRasterTaskService
{
    /**
     * 查询遥感监测任务
     *
     * @param id 遥感监测任务主键
     * @return 遥感监测任务
     */
    public DatasetRasterTask selectDatasetRasterTaskById(Long id);

    /**
     * 查询遥感监测任务列表
     *
     * @param datasetRasterTask 遥感监测任务
     * @return 遥感监测任务集合
     */
    public List<DatasetRasterTask> selectDatasetRasterTaskList(DatasetRasterTask datasetRasterTask);

    /**
     * 新增遥感监测任务
     *
     * @param datasetRasterTask 遥感监测任务
     * @return 结果
     */
    public int insertDatasetRasterTask(DatasetRasterTask datasetRasterTask);

    /**
     * 修改遥感监测任务
     *
     * @param datasetRasterTask 遥感监测任务
     * @return 结果
     */
    public int updateDatasetRasterTask(DatasetRasterTask datasetRasterTask);

    /**
     * 批量删除遥感监测任务
     *
     * @param ids 需要删除的遥感监测任务主键集合
     * @return 结果
     */
    public int deleteDatasetRasterTaskByIds(Long[] ids);

    /**
     * 删除遥感监测任务信息
     *
     * @param id 遥感监测任务主键
     * @return 结果
     */
    public int deleteDatasetRasterTaskById(Long id);

    int saveTask(LoginUser loginUser,AddRasterTaskVo taskVo);

    int saveTaskFlow(LoginUser loginUser, AddRasterTaskFlowVo taskVo);

    int saveTaskCode(LoginUser loginUser, AddRasterTaskCodeVo taskVo);
}
